home *** CD-ROM | disk | FTP | other *** search
INI File | 1996-07-31 | 32.0 KB | 1,227 lines |
- ;***********************************************************************
- ;
- ; OEMSETUP.INF
- ;
- ; E22XX network card and driver SETUP INF file.
- ; For Single chip card only!!!!
- ; History:
- ; v1.01 Release with help
- ;v1.02 Uses separate oemsetup.inf files for Single/Dual chip cards
- ;v1.03 Fixed Help File Bug -- Did not always load properly
- ;***********************************************************************
-
- [Identification]
- OptionType = NetAdapter
-
- [PlatformsSupported]
- ISA
- EISA
-
- [Options]
- E22XX
-
- ;***********************************************************************
- ; CONSTANTS FOR USING DIALOGS
- ;***********************************************************************
-
- [FileConstants]
-
-
- GenericInfVersion = " v1.03"
- GenericAdapterName = "Cabletron E22XX (9000939) Adapter"
- GenericDriverName = "Cabletron E22XX Driver"
- GenericSysName = "E22N3.SYS"
- GenericName = "E22XX"
-
- ;
- ; File names, etc.
- ;
- UtilityInf = "UTILITY.INF"
- ParamInf = "NCPARAM.INF"
- subroutineinf = "SUBROUTN.INF"
- SoftwareType = "driver"
- Exit_Code = 0
-
- ;
- ; EventLog Message File
- ;
- NetEventDLL = "%SystemRoot%\System32\netevent.dll"
- IoLogMsgDLL = "%SystemRoot%\System32\IoLogMsg.dll"
-
- ; Product Info
- ;
- Manufacturer = "Microsoft"
- ProductMajorVersion = "3"
- ProductMinorVersion = "1"
- ProductVersion = $(ProductMajorVersion)"."$(ProductMinorVersion)
-
- ;
- ; Software
- ;
- ProductSoftwareName = "E22XX"
- ProductSoftwareImagePath = "\SystemRoot\System32\drivers\"$(GenericSysName)
- NetRuleSoftwareType = "E22N3Sys ndisDriver E22XXDriver"
-
- NetRuleSoftwareUse = $(SoftwareType)
- NetRuleSoftwareBindForm = """E22N3Sys"" yes no container"
-
- NetRuleSoftwareClass = {"E22XXDriver basic"}
- NetRuleSoftwareBindable = {"E22XXDriver E22XXAdapter non exclusive 100"}
- ;
- ; Hardware
- ;
- ProductHardwareName = "E22XX"
- NetRuleHardwareType = "E22XX E22XXAdapter"
- NetRuleHardwareBindForm = " yes yes container"
- NetRuleHardwareClass = {"E22XXAdapter basic"}
-
- ;
- ; Registry Key
- ;
- ProductKeyName = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
- ParamKeyName = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
-
- [GeneralConstants]
- ;
- ; Program flow control variables.
- ;
- from = ""
- to = ""
- ;
- ; Return codes; Exit_Code is set to one of these
- ;
- ExitCodeOk = 0
- ExitCodeCancel = 1
- ExitCodeFatal = 2
-
- KeyNull = ""
- MAXIMUM_ALLOWED = 33554432
- RegistryErrorIndex = NO_ERROR
- KeyProduct = ""
- KeyParameters = ""
-
- TRUE = 1
- FALSE = 0
- NoTitle = 0
-
- ExitState = "Active"
- OldVersionExisted = $(FALSE)
-
- DriverPath = $(!STF_NTPATH)\drivers
-
- [date]
- ; Now is a list which contains { Sec from 1-1-1970, Year, Month, Day, Hour,
- ; Minute, Second }
- Now = {} ? $(!LIBHANDLE) GetSystemDate
-
- [Identify]
- ;
- ;
- read-syms Identification
-
- set Status = STATUS_SUCCESSFUL
- set Identifier = $(OptionType)
- set Media = #("Source Media Descriptions", 1, 1)
-
- Return $(Status) $(Identifier) $(Media)
-
- [ReturnOptions]
- ;
- ;
- set Status = STATUS_FAILED
- set OptionList = {}
- set OptionTextList = {}
-
- ;
- ; Check if the language requested is supported
- ;
- set LanguageList = ^(LanguagesSupported, 1)
- Ifcontains(i) $($0) in $(LanguageList)
- ;
- ; Check if the platforms requested is supported
- ;
- ifstr(i) $($1) == ""
- goto returnoptions
- endif
-
- set PlatformList = ^(PlatformsSupported, 1)
- Ifcontains(i) $($1) in $(PlatformList)
- goto returnoptions
- else
- set Status = STATUS_NOTSUPPORTED
- goto finish_ReturnOptions
- endif
- else
- set Status = STATUS_NOLANGUAGE
- goto finish_ReturnOptions
- endif
-
- ;
- ; form a list of all the options and another of the text representing
- ;
-
- returnoptions = +
- set OptionList = ^(Options, 1)
- set OptionTextList = ^(OptionsText$($0), 1)
- set Status = STATUS_SUCCESSFUL
-
- finish_ReturnOptions = +
- Return $(Status) $(OptionList) $(OptionTextList)
-
- [InstallOption]
- ;
- ; Set default values for
- ;
- set Status = STATUS_FAILED
- ;
- ; extract parameters
- ;
- set Option = $($1)
- set SrcDir = $($2)
- set AddCopy = $($3)
- set DoCopy = $($4)
- set DoConfig = $($5)
-
- ;
- ; Check if the language requested is supported
- ;
- set LanguageList = ^(LanguagesSupported, 1)
- Ifcontains(i) $($0) NOT-IN $(LanguageList)
- Return STATUS_NOLANGUAGE
- endif
-
- set-subst LF = "\n"
-
- read-syms GeneralConstants
- read-syms FileConstants
-
- read-syms DialogConstants$(!STF_LANGUAGE)
- ifstr(i) $(!NTN_Origination) == "NCPA"
- set Continue = $(OK)
- endif
- read-syms FileConstants$(!STF_LANGUAGE)
-
- detect date
-
- set-title $(FunctionTitle)
-
- set to = Begin
- set from = Begin
- ;
- ; Assume all is well.
- ;
- set CommonStatus = STATUS_SUCCESSFUL
-
- EndWait
-
- ;
- ; Set up the operation-mode-based variables and gaily welcome
- ; the user. If the "install mode" variable is improperly set,
- ; assume this is a new installation.
- ;
-
- Begin = +
- SetHelpFile "E22.hlp" 0 0
- Set ActivateDetection = FALSE
-
- Ifstr(i) $(!NTN_InstallMode) == deinstall
- set StartLabel = removeadapter
- else-Ifstr(i) $(!NTN_InstallMode) == Update
- set StartLabel = UpgradeSoftware
- else-Ifstr(i) $(!NTN_InstallMode) == bind
- set StartLabel = bindingadapter
- else-Ifstr(i) $(!NTN_InstallMode) == configure
- ; set ActivateDetection = TRUE
- set StartLabel = configureadapter
- ;
- ; You cannot config the software component
- ;
- Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
- Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- set Error = $($R0)
- set from = end
- set to = end
- goto nonfatalinfo
- endif
- else
- ; set ActivateDetection = TRUE
- set StartLabel = installadapter
- set OEM_ABANDON_OPTIONS = {}
- set OEM_ABANDON_SOFTWARE = FALSE
- set OEM_ABANDON_ON = TRUE
- endif
-
-
-
- ; set the default values
-
- ; IOBase Address = 0x2A0
- set IOBaseAddrValue1 = *($(IOBaseAddrList1), 6)
-
- ; IOBase Address = 0x2C0
- ;LRW set IOBaseAddrValue2 = *($(IOBaseAddrList2), 7)
-
- ; DMA = 5
- ;LRW set DMAValue = *($(DMAList), 1)
-
- set CardTypeValue = 0
-
- Set from = $(fatal)
- Set to = $(fatal)
- Goto $(StartLabel)
-
- ;-----------------------------------------------
- ; Installation Section
- ;-----------------------------------------------
-
- installadapter = +
- ;
- ; First, check whether the same version of the software exists
- ;
- OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
-
- Ifstr $(KeyProduct) != $(KeyNull)
- ;
- ; Same version already existed in the local machine
- ; Popup the dialog and ask the user whether he wants to continue
- ;
- CloseRegKey $(KeyProduct)
-
- ifstr(i) !(NTN_RegBase) == $(ProductKeyName)
- ;
- ; Cannot Install the same software again
- ;
- Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
- $(ProductVersion)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- goto end
- else
- ;
- ; Add a new adapter card?
- ;
- Shell $(UtilityInf), CardExistedDlg
-
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- ifstr(i) $($R1) != "OK"
- goto end
- endif
- set OldVersionExisted = $(TRUE)
- endif
- endif
-
- ;
- ; dll load addition
- ;
- Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
-
- Ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Goto ShellCodeError
- Else-Ifstr(i) $($R0) == STATUS_FAILED
- Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- set Error = $($R0)
- Goto fatal
- Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
- Goto successful
- Endif
-
- Set SrcDir = $($R1)
-
- SetHelpFile "E22.hlp" 0 0
-
- install "Install-Dll"
-
- goto adaptersetup
-
- ;-----------------------------------------------
- ; Configuration Section
- ;-----------------------------------------------
- ;
- ; Get the current values of all the parameters
- ;
- configureadapter = +
- Ifstr $(KeyProduct) == $(KeyNull)
- OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) $(MAXIMUM_ALLOWED) KeyProduct
- Ifstr $(KeyProduct) == $(KeyNull)
- set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
- goto fatalregistry
- Endif
- Endif
-
- ;
- ; Get the other parameters; they're attached to the service parameters key
- ;
- Shell $(UtilityInf) FindService, $(KeyProduct)
- Ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Goto ShellCodeError
- Endif
- Ifstr(i) $($R0) != NO_ERROR
- Goto fatalregistry
- endif
-
- Set KeyParameters = $($R2)
-
- ;
- ; We don't need the services key, so close it.
- ;
- CloseRegKey $($R1)
-
- Ifstr $(KeyParameters) == $(KeyNull)
- set RegistryErrorIndex = CANNOT_FIND_COMPONENT_SERVICE
- goto fatalregistry
- endif
-
- set OldVersionExisted = $(TRUE)
-
- set ValueName = ""
- set ValueData = ""
- set ValueStr = ""
- set ValueList = {}
-
-
- ;
- ; Get the old values
- ;
- EnumRegValue $(KeyParameters) ValueList
-
- ForListDo $(ValueList)
- set ValueItem = $($)
- set ValueName = *($(ValueItem),1)
- set ValueData = *($(ValueItem),4)
- ifstr(i) $(ValueName) == "IoAddress"
- set IOBaseAddrIndex1 = $(ValueData)
- ;LRW else-ifstr(i) $(ValueName) == "IoAddress2"
- ; LRW set IOBaseAddrIndex2 = $(ValueData)
- ;LRW else-ifstr(i) $(ValueName) == "DMAChannel"
- ;LRW set DMAIndex = $(ValueData)
- else-ifstr(i) $(ValueName) == "NetworkAddress"
- set NetworkAddress = $(ValueData)
- endif
-
- EndForListDo
-
- set IOBaseAddrValue1 = *($(IOBaseAddrList1), ~($(IOBaseAddrValues1),$(IOBaseAddrIndex1)))
- ifstr(i) $(IOBaseAddrValue1) == ""
- set IOBaseAddrValue1 = *($(IOBaseAddrList1), 6)
- endif
-
- ;LRW set IOBaseAddrValue2 = *($(IOBaseAddrList2),
- ;LRW ~($(IOBaseAddrValues2),$(IOBaseAddrIndex2)))
- ;LRW ifstr(i) $(IOBaseAddrValue2) == ""
- ;LRW set IOBaseAddrValue2 = *($(IOBaseAddrList2), 7)
- ;LRW endif
-
- ;LRW set DMAValue = *($(DMAList), ~($(DMAValues),$(DMAIndex)))
- ;LRW ifstr(i) $(DMAValue) == ""
- ;LRW set DMAValue = *($(DMAList), 1)
- ;LRW endif
-
- ; Save the settings as they were read from the Registry.
-
- ; Shell $(ParamInf) Param_SaveValues
- ; Set CurrParamSettings = $($R0)
- ;
- ; Put up the adapter configuration dialog if necessary.
- ;
- ; Note that $(CurrParamSettings) has the old known parameter values.
- ;
- adaptersetup = +
-
-
- ; Shell "" DebugConfiguration "before displaying dialog"
-
- Set from = adapteroptions
-
-
- adapteroptions = +
-
-
- LoadLibrary "Disk 1" $(DialogDllName) hLib
-
- read-syms FileDependentDlg$(!STF_LANGUAGE)
-
- ui start "InputDlg" $(hLib)
-
- set ExitButton = $(ButtonPressed)
-
- FreeLibrary $(hLib)
-
- ifstr(i) $(DLGEVENT) == "CONTINUE"
- set IOBaseAddrIndex1 = $(Combo1Out)
- ;LRW set IOBaseAddrIndex2 = $(Combo2Out)
- ;LRW set DMAIndex = $(Combo3Out)
- set NetworkAddress = *($(EditTextOut),1)
- set ExitButton = $(ButtonPressed)
-
-
- ui pop 1
- ; goto nextstep
- else-ifstr(i) $(DLGEVENT) == "EXIT"
- set CommonStatus = STATUS_USERCANCEL
- ui pop 1
- goto end
- else
- ;
- ; Unknow command
- ;
- ui pop 1
-
- goto end
- endif
-
- ;
- ; If installing, go create the necessary keys;
- ; if configuring, they're already open.
- ;
- skipoptions =+
-
- ifint $(OldVersionExisted) == $(TRUE)
- ifstr(i) $(!NTN_InstallMode) == configure
- goto writeparameters
- endif
- endif
- StartWait
- ;
- ; Add Software Component
- ;
- ifint $(OldVersionExisted) == $(FALSE)
-
- ifstr(i) $(!NTN_InstallMode) == "install"
- Ifstr(i) $(DoCopy) == "YES"
-
- Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
-
- Ifint $($ShellCode) != $(!SHELL_CODE_OK)
- Goto ShellCodeError
- Else-Ifstr(i) $($R0) == STATUS_FAILED
- Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- set Error = $($R0)
- Goto fatal
- Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
- Goto successful
- Endif
-
- Set SrcDir = $($R1)
-
- Endif
-
- install "Install-Option"
-
- ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
- Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- set Error = $($R0)
- goto fatal
- endif
- endif
-
-
-
- Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
- $(ProductSoftwareName), +
- $(ProductSoftwareName), +
- $(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
- $(ProductSoftwareImagePath), "kernel", "NDIS", {}, "",+
- $(NetEventDLL)
-
- Set OEM_ABANDON_SOFTWARE = TRUE
-
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set RegistryErrorIndex = $($R0)
- set KeyProduct = $($R1)
- Set SoftNetRulesKey = $($R2)
- CloseRegKey $($R3)
- CloseRegKey $($R4)
- CloseRegKey $($R5)
-
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- EndWait
- CloseRegKey $(KeyProduct)
- CloseRegKey $(SoftNetRulesKey)
- goto fatalregistry
- endif
-
- set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
- {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
- {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
- {Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)},+
- {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)},+
- {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
- {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
-
- Shell $(UtilityInf), AddValueList, $(KeyProduct), $(NewValueList)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set RegistryErrorIndex = $($R0)
-
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- EndWait
- CloseRegKey $(KeyProduct)
- CloseRegKey $(SoftNetRulesKey)
- goto fatalregistry
- endif
-
- set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
- {use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
- {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
- {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
- {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
- {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
-
- Shell $(UtilityInf), AddValueList, $(SoftNetRulesKey), $(NewValueList)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set RegistryErrorIndex = $($R0)
-
- CloseRegKey $(KeyProduct)
- CloseRegKey $(SoftNetRulesKey)
-
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- EndWait
- goto fatalregistry
- endif
- endif
- ;
- ; Create the HARDWARE\Netcard region and its corresponding service
- ;
- Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
-
- ifint $($R4) != -1
- Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
- endif
-
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set RegistryErrorIndex = $($R0)
-
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- EndWait
- CloseRegKey $($R1)
- CloseRegKey $($R2)
- CloseRegKey $($R3)
- goto fatalregistry
- endif
-
- set KeyParameters = $($R3)
- set KeyAdapterRules = $($R2)
- set AdapterNumber = $($R4)
-
- set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
- {Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardware$(Option)Title)},+
- {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardware$(Option)Description)},+
- {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
- {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
- {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
-
- Shell $(UtilityInf), AddValueList, $($R1), $(NewValueList)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- CloseRegKey $($R1)
-
- set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
- set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
-
- set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareType)},+
- {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
- {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClass)}, +
- {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
-
- Shell $(UtilityInf), AddValueList, $(KeyAdapterRules), $(NewValueList)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set RegistryErrorIndex = $($R0)
-
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- EndWait
- CloseRegKey $(KeyParameters)
- CloseRegKey $(KeyAdapterRules)
- goto fatalregistry
- endif
-
- CloseRegKey $(KeyAdapterRules)
-
- goto writeparameters
- ;
- ; REQUIRED: $(KeyParameters) contains service Parameters key handle
- ;
- writeparameters = +
- Shell $(UtilityInf), GetBusTypeNum
- set BusTypeNum = $($R1)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- ; Set NewValueList = {{Transceiver,$(NoTitle),$(!REG_VT_DWORD),$(TransceiverValue)},+
- ; {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusTypeNum)},+
- ; {MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
- ; {MemoryMapped,$(NoTitle),$(!REG_VT_DWORD),$(MappedValue)},+
- ; {InterruptNumber,$(NoTitle),$(!REG_VT_DWORD),$(IRQValue)},+
- ; {IoBaseAddress,$(NoTitle),$(!REG_VT_DWORD),$(IOBaseAddrValue)}}
- ;
-
- set IOBaseAddrValue1 = *($(IOBaseAddrValues1), ~($(IOBaseAddrList1),$(IOBaseAddrIndex1)))
-
- ;LRW set IOBaseAddrValue2 = *($(IOBaseAddrValues2), ;LRW~($(IOBaseAddrList2),$(IOBaseAddrIndex2)))
-
- ;LRW set DMAValue = *($(DMAValues), ~($(DMAList),$(DMAIndex)))
-
- set NetworkAddress = *($(EditTextOut),1)
-
-
- set NewValueList = {{BusNumber,$(NoTitle),$(!REG_VT_DWORD),0},+
- {BusType,$(NoTitle),$(!REG_VT_DWORD),$(BusTypeNum)},+
- {MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
- {IoAddress,$(NoTitle),$(!REG_VT_DWORD),$(IOBaseAddrValue1)},+
- ;LRW {IoAddress2,$(NoTitle),$(!REG_VT_DWORD),$(IOBaseAddrValue2)},+
- ;LRW {DMAChannel,$(NoTitle),$(!REG_VT_DWORD),$(DMAValue)},+
- {NetworkAddress,$(NoTitle),$(!REG_VT_SZ),$(NetworkAddress)}}
-
- Shell $(UtilityInf), AddValueList, $(KeyParameters), $(NewValueList)
-
- CloseRegKey $(KeyParameters)
-
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set RegistryErrorIndex = $($R0)
-
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- goto fatalregistry
- endif
-
- EndWait
-
- goto successful
-
- ;-----------------------------------------------
- ; Binding section
- ;-----------------------------------------------
- bindingadapter =+
- set Error = "Binding: Sorry, not yet implemented."
- goto fatal
-
- ;-----------------------------------------------
- ; Removeadapter section
- ;-----------------------------------------------
-
- removeadapter = +
- Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
- ; Remove Software Component
- Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
- $(ProductSoftwareName)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set RegistryErrorIndex = $($R0)
-
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- goto fatalregistry
- endif
- else
- Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
- $(ProductSoftwareName), $(!NTN_RegBase)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set RegistryErrorIndex = $($R0)
-
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- goto fatalregistry
- endif
- endif
-
- goto end
-
- ;-----------------------------------------------
- ; Upgrade Software section
- ;-----------------------------------------------
-
- UpgradeSoftware = +
-
- ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
- ; Upgrade software component
- ;
- ; see whether the same version exist or not
- ;
- OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
-
- Ifstr $(KeyProduct) != $(KeyNull)
- GetRegValue $(KeyProduct),"MajorVersion", VersionInfo
- set Version = *($(VersionInfo), 4)
-
- ;
- ; Update the binaries
- ;
- Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
-
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set !UG_Filename = $($R0)
-
- ifstr(i) $(!UG_Filename) != ""
- install "Install-Update"
- ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
- goto fatal
- endif
- endif
-
- ; Upgrade the version number
- ;
- SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
- SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
-
- ;
- ; do nothing for update
- ;
- ifint $(Version) != $(ProductVersion)
- ;
- ; If the major version number is not the same,
- ; it is major upgrade. So let Upgrade the product
- ;
- ;
- ; make other upgrade change if necessary
- ;
- endif
- CloseRegKey $(KeyProduct)
- else
- ;
- ; Cannot Open software key, goto ERROR
- ;
- goto fatalregistry
- endif
- else
- ;
- ; upgrade/update hardware component
- ; There is no different between upgrade and update for hardware
- ; component
- ;
- ; 1. Get the Service Name
- ; 2. Change the NetRule section if necessary
- ;
- OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) +
- $(MAXIMUM_ALLOWED) NetworkCardKey
- Ifstr(i) $(NetworkCardKey) != $(KeyNull)
- ;
- ; Get Service name
- ;
- GetRegValue $(NetworkCardKey),"ServiceName", ServiceNameInfo
- set ServiceName = *($(ServiceNameInfo), 4)
-
- ;
- ; Change the NetRule if necessary
- ;
- OpenRegKey $(NetworkCardKey) "" "NetRules" +
- $(MAXIMUM_ALLOWED) NetRuleKey
- Ifstr(i) $(NetRuleKey) != $(KeyNull)
- ;
- ; Make the change....
- ;
- else
- ;
- ; Error, cannot open net rules key
- ;
- goto fatalregistry
- endif
-
- CloseRegKey $(NetRules)
- CloseRegKey $(NetworkCardKey)
- else
- ;
- ; Error, cannot open network card key
- ;
- goto fatalregistry
- endif
- ;
- ; 3. Change the service section of the hardware. i.e.,
- ; ParameterName change, value change, etc.
- ;
- OpenRegKey $(!REG_H_LOCAL) "" +
- $(!NTN_ServiceBase)"\"$(ServiceName) +
- $(MAXIMUM_ALLOWED) ServiceKey
-
- Ifstr(i) $(ServiceKey) != $(KeyNull)
- ;
- ; Get the ServiceKey to change the Start value
- ; or Type value. Or open Parameters key to
- ; change the hardware parameters if necessary.
- ;
- CloseRegKey $(ServiceKey)
- else
- ;
- ; Error, cannot open network card key
- ;
- goto fatalregistry
- endif
- endif
-
- goto end
- ;
- ; End of Upgrade Software
- ;
-
- ;
- ; Escape hatches
- ;
- successful = +
- goto end
-
- abandon = +
- ForListDo $(OEM_ABANDON_OPTIONS)
- Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
- $(ProductSoftwareName), $($)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set RegistryErrorIndex = $($R0)
-
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- goto fatalregistry
- endif
- EndForListDo
-
- Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
- ; Remove Software Component
- Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
- $(ProductSoftwareName), FALSE
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- set RegistryErrorIndex = $($R0)
-
- Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
- goto fatalregistry
- endif
- endif
-
- goto end
-
- ;
- ; warning display
- ;
- warning = +
- Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- ifstr(i) $($R1) == "OK"
- goto $(to)
- else-ifstr(i) $($R1) == "CANCEL"
- goto $(from)
- else
- goto "end"
- endif
- ;
- ; non fatal error display
- ;
- nonfatalinfo = +
- Set Severity = STATUS
- Set CommonStatus = STATUS_USERCANCEL
- goto nonfatalmsg
- nonfatal = +
- Set Severity = NONFATAL
- goto nonfatalmsg
- nonfatalmsg = +
- ifstr(i) $(Error) == ""
- Set Severity = NONFATAL
- Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- set Error = $($R0)
- endif
- Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- ifstr(i) $($R1) == "OK"
- goto $(from)
- else
- goto "end"
- endif
-
- ;
- ; Registry is broken
- ;
- fatalregistry = +
- Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- set Error = $($R0)
- goto fatal
- ;
- ; Netcard detection failure
- ;
- fataldetect = +
- Shell $(UtilityInf),RegistryErrorString,CANNOT_DETECT
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- set Error = $($R0)
- Goto fatal
- ;
- ; fatal error display
- ;
- fatal = +
- ifstr(i) $(Error) == ""
- Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
- set Error = $($R0)
- endif
- Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
- ifint $($ShellCode) != $(!SHELL_CODE_OK)
- goto ShellCodeError
- endif
-
- goto setfailed
-
- ;
- ; Shelling error
- ;
- ShellCodeError = +
- set DlgType = "MessageBox"
- set STF_MB_TITLE = $(ShellCodeErrorTitle)
- set STF_MB_TEXT = $(ShellCodeErrorText)
- set STF_MB_TYPE = 1
- set STF_MB_ICON = 3
- set STF_MB_DEF = 1
- ui start "Error Message"
- goto setfailed
-
- setfailed = +
- set CommonStatus = STATUS_FAILED
- ;
- ; if OEM_ABANDON_ON == TRUE, then remove the registry entries
- ;
- ifstr(i) $(OEM_ABANDON_ON) == TRUE
- set OEM_ABANDON_ON = FALSE
- goto abandon
- endif
- goto end
-
- end = +
- goto term
-
- term = +
-
- Return $(CommonStatus)
-
- [DebugConfiguration]
-
- Set InfName = "OEMsetup.INF"
-
- return
-
-
- ;***************************************************************
- ; INSTALL SECTIONS
- ;***************************************************************
- [Install-Option]
- set STF_VITAL = ""
-
- ifstr(i) $(AddCopy) == "YES"
-
- ;
- ; Add the files to the copy list
- ;
- ; BUGBUG: eliminate the "nt2" in the next line when Sunil fixes
- ; the other INF files
- ;
- AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
-
- endif
-
- ifstr(i) $(DoCopy) == "YES"
-
- ;
- ; Copy files in the copy list
- ;
- set !STF_NCPA_FLUSH_COPYLIST = TRUE
- CopyFilesInCopyList
-
- endif
-
- Exit
-
- [Install-Update]
- set STF_VITAL = ""
- set STF_OVERWRITE = "VERIFYSOURCEOLDER"
- ;set STF_VERSION = "YES"
-
- AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
- AddSectionFilesToCopyList Files-Inf $(SrcDir) $(!STF_WINDOWSSYSPATH)
-
- set !STF_NCPA_FLUSH_COPYLIST = TRUE
- CopyFilesInCopyList
-
- exit
-
- [Install-Dll]
- set STF_VITAL = ""
- AddSectionFilesToCopyList Files-Dll $(SrcDir) $(!STF_WINDOWSSYSPATH)
- CopyFilesInCopyList
- exit
-
- [Source Media Descriptions]
- 1 = "Windows NT Setup Disk #1"
- 2 = "Windows NT Setup CD-ROM Disk"
- 5 = "Cabletron Drivers Disk"
- 99 = "LMHOST disk"
-
- [ProductType]
- STF_PRODUCT = Winnt
- STF_PLATFORM = I386
-
- [Files-Inf]
- 5, oemsetup.inf, SIZE=1000, RENAME=$(!UG_Filename)
-
- [Files-E22XX]
- 5, E22N3.SYS , SIZE=88888
-
- [Files-Dll]
- 5, ctrondlg.dll, SIZE=999
- 5, E22.hlp, SIZE=9999
-
- [LanguagesSupported]
- ENG
-
- [OptionsTextENG]
- E22XX = "Cabletron E22XX Ethernet (9000939) Adapter"
-
- [FileConstantsENG]
- ProCaption = "Windows NT Setup"
- ProCancel = "Cancel"
- ProCancelMsg = "Windows NT Networking is not correctly installed. "+
- "Are you sure you want to cancel copying files?"
- ProCancelCap = "Network Setup Message"
- ProText1 = "Copying:"
- ProText2 = "To:"
-
- FunctionTitle = $(GenericAdapterName)" Card Setup"$(GenericInfVersion)
-
- ProductSoftwareDescription = $(GenericDriverName)
- ProductHardwareDescription = $(GenericAdapterName)
-
- ProductSoftwareTitle = $(GenericDriverName)
- ProductHardwareE22XXTitle = $(GenericAdapterName)
-
- DialogDllName = "ctrondlg.dll"
-
- IOBaseAddrList1 = ^(IOBaseAddrChoices, 1)
- IOBaseAddrValues1 = ^(IOBaseAddrChoices, 2)
-
- ;LRW IOBaseAddrList2 = ^(IOBaseAddrChoices, 1)
- ;LRW IOBaseAddrValues2 = ^(IOBaseAddrChoices, 2)
-
- ;LRW DMAList = ^(DMAChoices, 1)
- ;LRW DMAValues = ^(DMAChoices, 2)
-
- [DialogConstantsENG]
- Help = "&Help"
- Exit = "Cancel"
- OK = "OK"
- HelpContext = 0
- Continue = "Continue"
- Cancel = "Cancel"
-
- [FileDependentDlgENG]
-
- DlgText = "Please select values for the following fields:"
-
- DlgType = "Combination"
- DlgTemplate = "E22XX_SINGLE"
- ;LRW DlgTemplate = "E22XX"
- Caption = $(FunctionTitle)
-
- CBOptionsGreyed = {}
- NotifyFields = {NO, NO}
- HelpContext = 0
-
- Edit1Label = "Alt Network &Address:"
- EditTextLim = 17
- EditTextIn = $(NetworkAddress)
-
- Combo1Label = "I/O Port&1:"
- ;LRW Combo2Label = "I/O Port&2:"
- ;LRW Combo3Label = "&DMA Channel:"
-
- Combo1List = $(IOBaseAddrList1)
- Combo1Out = $(IOBaseAddrValue1)
-
- ;LRW Combo2List = $(IOBaseAddrList2)
- ;LRW Combo2Out = $(IOBaseAddrValue2)
-
- ;LRW Combo3List = $(DMAList)
- ;LRW Combo3Out = $(DMAValue)
-
- ;LRW ComboListItemsIn = {Combo1List, Combo2List, Combo3List}
- ComboListItemsIn = {Combo1List}
-
- ;LRW ComboListItemsOut = {Combo1Out, Combo2Out, Combo3Out}
- ComboListItemsOut = {Combo1Out}
-
- ;EditTextIn = {"",""}
-
- ;EditTextLim = {"",""}
-
- [IOBaseAddrChoices]
- IOBase_1 = "0x200",512
- IOBase_2 = "0x220",544
- IOBase_3 = "0x240",576
- IOBase_4 = "0x260",608
- IOBase_5 = "0x280",640
- IOBase_6 = "0x2A0",672
- IOBase_7 = "0x2C0",704
- IOBase_8 = "0x2E0",736
- IOBase_9 = "0x300",768
- IOBase_10 = "0x320",800
- IOBase_11 = "0x340",832
- IOBase_12 = "0x360",864
- IOBase_13 = "0x380",896
- IOBase_14 = "0x3A0",928
- IOBase_15 = "0x3C0",960
-
- [DMAChoices]
- DMA_1 = "5",5
- DMA_2 = "6",6
- DMA_3 = "7",7
- DMA_4 = "3",3